Systems have limited shared resources and can fail if shared resources are not reclaimed when no longer in use. Additionally, systems can accommodate more requests for shared resources than their nominal capacity by reclaiming, in certain conditions, shared resources that are still allocated but momentarily not in use and then re-allocating them. Thus, a need exists for monitoring and re-allocating shared resources.